/*******************************************************************************
 * Copyright (c) 2004, 2005 IBM Corporation and others.
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the Eclipse Public License v1.0
 * which accompanies this distribution, and is available at
 * http://www.eclipse.org/legal/epl-v10.html
 *
 * Contributors:
 *     IBM Corporation - initial API and implementation
 *******************************************************************************/
package edu.mse.camel.client.whiteboard.gef.ui.commands;

import edu.mse.camel.client.whiteboard.gef.whiteboard.Shape;

/**
 * @author Pratik Shah
 * @since 3.1
 */
public class ChangeTextCommand 
extends AbstractWhiteboardCommand
{
	private Shape shape;
	private String newText, oldText;


	public ChangeTextCommand(Object obj, String newText) {
		setLabel("Text Edit Comment");
		if (obj instanceof Shape) { this.shape = (Shape) obj; }
		this.newText = newText;
	}
	public boolean canExecute() {
		return shape != null && newText != null;
	}

	public void execute() {
		oldText = shape.getText();
		shape.setText(newText);
	}

	public void undo() {
		shape.setText(oldText);
	}

}
